home *** CD-ROM | disk | FTP | other *** search
- package sun.audio;
-
- import java.io.InputStream;
- import java.security.AccessController;
-
- public class AudioPlayer extends Thread {
- private AudioDevice devAudio;
- private static boolean DEBUG = false;
- public static final AudioPlayer player = getAudioPlayer();
-
- private static ThreadGroup getAudioThreadGroup() {
- if (DEBUG) {
- System.out.println("AudioPlayer.getAudioThreadGroup()");
- }
-
- ThreadGroup var0;
- for(var0 = currentThread().getThreadGroup(); var0.getParent() != null && var0.getParent().getParent() != null; var0 = var0.getParent()) {
- }
-
- return var0;
- }
-
- private static AudioPlayer getAudioPlayer() {
- if (DEBUG) {
- System.out.println("> AudioPlayer.getAudioPlayer()");
- }
-
- 1 var1 = new 1();
- AudioPlayer var0 = (AudioPlayer)AccessController.doPrivileged(var1);
- return var0;
- }
-
- private AudioPlayer() {
- super(getAudioThreadGroup(), "Audio Player");
- if (DEBUG) {
- System.out.println("> AudioPlayer private constructor");
- }
-
- this.devAudio = AudioDevice.device;
- this.devAudio.open();
- if (DEBUG) {
- System.out.println("< AudioPlayer private constructor completed");
- }
-
- }
-
- public synchronized void start(InputStream var1) {
- if (DEBUG) {
- System.out.println("> AudioPlayer.start");
- System.out.println(" InputStream = " + var1);
- }
-
- this.devAudio.openChannel(var1);
- this.notify();
- if (DEBUG) {
- System.out.println("< AudioPlayer.start completed");
- }
-
- }
-
- public synchronized void stop(InputStream var1) {
- if (DEBUG) {
- System.out.println("> AudioPlayer.stop");
- }
-
- this.devAudio.closeChannel(var1);
- if (DEBUG) {
- System.out.println("< AudioPlayer.stop completed");
- }
-
- }
-
- public void run() {
- this.devAudio.play();
- if (DEBUG) {
- System.out.println("AudioPlayer mixing loop.");
- }
-
- while(true) {
- try {
- Thread.sleep(5000L);
- } catch (Exception var2) {
- if (DEBUG) {
- System.out.println("AudioPlayer exited.");
- }
-
- return;
- }
- }
- }
-
- // $FF: synthetic method
- AudioPlayer(1 var1) {
- this();
- }
- }
-